-- card: 8539 from stack: in -- bmap block id: 0 -- flags: 0000 -- background id: 4755 -- name: -- part contents for background part 6 ----- text ----- 3. Functions -- part contents for background part 7 ----- text ----- 83 -- part contents for background part 4 ----- text ----- In C there is no syntactic distinction between procedures and functions. A procedure is simply a function which does not return a useful value. Traditionally C programs were constructed by decomposing the overall task into a hierarchy of functions and procedures. As will be discussed in Chapter 4, TC and C++ provide features which encourage the object-oriented programming approach, where the overall task is decomposed instead into a collection of interacting objects, each of which encapsulates data and the procedures - or "member functions" - which act upon this data. An understanding of C functions is required before the programmer can construct objects, and traditional C functions also find uses in such programs.